https://leetcode.cn/problems/ji-qi-ren-de-yun-dong-fan-wei-lcof/description/
//class Solution
//{
//    bool vis[101][101];
//    int sum;
//    int _m, _n;
//    int _cnt;
//    int dx[4] = { -1,1,0,0 };
//    int dy[4] = { 0,0,1,-1 };
//public:
//    int wardrobeFinishing(int m, int n, int cnt)
//    {
//        _cnt = cnt, _m = m, _n = n;
//        dfs(0, 0);
//        return sum;
//    }
//
//    void dfs(int i, int j)
//    {
//        vis[i][j] = true;
//        sum++;
//        for (int k = 0; k < 4; k++)
//        {
//            int x = dx[k] + i;
//            int y = dy[k] + j;
//            if (x >= 0 && x < _m && y >= 0 && y < _n && !vis[x][y] && check(x, y))
//            {
//                dfs(x, y);
//            }
//        }
//    }
//
//    bool check(int i, int j)
//    {
//        int tmp = 0;
//        while (i)
//        {
//            tmp += i % 10;
//            i /= 10;
//        }
//        while (j)
//        {
//            tmp += j % 10;
//            j /= 10;
//        }
//        return tmp <= _cnt;
//    }
//};

https://leetcode.cn/problems/fei-bo-na-qi-shu-lie-lcof/description/
//class Solution
//{
//    int mem[101];
//public:
//    int fib(int n)
//    {
//        memset(mem, -1, sizeof mem);
//        return dfs(n);
//    }
//
//    int dfs(int n)
//    {
//        if (mem[n] != -1) return mem[n];
//        if (n == 0 || n == 1)
//        {
//            mem[n] = n;
//            return n;
//        }
//        mem[n] = (dfs(n - 1) + dfs(n - 2)) % 1000000007;
//        return mem[n];
//    }
//};